package cn.iocoder.yudao.module.reading.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

/**
 * 社区内容安全检查配置
 *
 * @author 芋道源码
 */
@Configuration
@ConfigurationProperties(prefix = "yudao.community.security")
@Data
public class CommunitySecurityConfig {

    /**
     * 是否启用微信内容安全检查
     */
    private Boolean enableWxCheck = true;

    /**
     * 是否启用本地敏感词检查
     */
    private Boolean enableLocalCheck = true;

    /**
     * 检查失败时的处理策略
     * - strict: 严格模式，检查失败直接拒绝
     * - lenient: 宽松模式，检查失败时允许通过但记录日志
     */
    private String failureStrategy = "strict";

    /**
     * 微信API调用超时时间（毫秒）
     */
    private Integer wxApiTimeout = 5000;

    /**
     * 图片下载超时时间（毫秒）
     */
    private Integer imageDownloadTimeout = 10000;

    /**
     * 最大图片大小（字节）
     */
    private Long maxImageSize = 5 * 1024 * 1024L; // 5MB

    /**
     * 支持的图片格式
     */
    private String[] supportedImageFormats = {"jpg", "jpeg", "png", "gif", "bmp"};

    /**
     * 是否启用缓存
     */
    private Boolean enableCache = true;

    /**
     * 缓存过期时间（秒）
     */
    private Integer cacheExpireSeconds = 3600; // 1小时

}
